From a71a96a41e273f3943119965a8cb75550cca6ba8 Mon Sep 17 00:00:00 2001 From: Wei Liu Date: Mon, 2 Oct 2017 12:48:28 +0100 Subject: [PATCH] libxl/gentypes: fix generating array of enums There is no reason to hardcode "x" in code. Use "w" which is passed by the higher level. This change requires us to allow "x" to be unused so that the top-level enum parse_json functions continue to compile. Signed-off-by: Wei Liu Acked-by: Ian Jackson --- tools/libxl/gentypes.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/libxl/gentypes.py b/tools/libxl/gentypes.py index 76aca76aaa..88e5c5f30e 100644 --- a/tools/libxl/gentypes.py +++ b/tools/libxl/gentypes.py @@ -432,7 +432,7 @@ def libxl_C_type_parse_json(ty, w, v, indent = " ", parent = None, discrimina s = "" if parent is None: s += "int rc = 0;\n" - s += "const libxl__json_object *x = o;\n" + s += "const libxl__json_object *x __attribute__((__unused__)) = o;\n" if isinstance(ty, idl.Array): if parent is None: @@ -467,11 +467,11 @@ def libxl_C_type_parse_json(ty, w, v, indent = " ", parent = None, discrimina raise Exception("Only KeyedUnion can have discriminator") s += "{\n" s += " const char *enum_str;\n" - s += " if (!libxl__json_object_is_string(x)) {\n" + s += " if (!libxl__json_object_is_string(%s)) {\n" % w s += " rc = -1;\n" s += " goto out;\n" s += " }\n" - s += " enum_str = libxl__json_object_get_string(x);\n" + s += " enum_str = libxl__json_object_get_string(%s);\n" % w s += " rc = %s_from_string(enum_str, %s);\n" % (ty.typename, ty.pass_arg(v, parent is None, idl.PASS_BY_REFERENCE)) s += " if (rc)\n" s += " goto out;\n" -- 2.30.2